]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
extensionSystem: Use Gio.File.new_tmp
authorJasper St. Pierre <jstpierre@mecheye.net>
Thu, 24 May 2012 16:24:07 +0000 (12:24 -0400)
committerJasper St. Pierre <jstpierre@mecheye.net>
Fri, 25 May 2012 22:25:51 +0000 (18:25 -0400)
https://bugzilla.gnome.org/show_bug.cgi?id=676837

js/ui/extensionSystem.js

index 9435092cfad919a778d28ab3a19c44d57abeca79..2d64acdab6ab50956520ffc8191a05cb27bbba85 100644 (file)
@@ -100,21 +100,12 @@ function gotExtensionZipFile(session, message, uuid) {
         return;
     }
 
-    // FIXME: use a GFile mkstemp-type method once one exists
-    let fd, tmpzip;
-    try {
-        [fd, tmpzip] = GLib.file_open_tmp('XXXXXX.shell-extension.zip');
-    } catch (e) {
-        logExtensionError(uuid, 'tempfile: ' + e.toString());
-        return;
-    }
-
-    let stream = new Gio.UnixOutputStream({ fd: fd });
+    let [file, stream] = Gio.File.new_tmp('XXXXXX.shell-extension.zip');
     let dir = ExtensionUtils.userExtensionsDir.get_child(uuid);
-    Shell.write_soup_message_to_stream(stream, message);
+    Shell.write_soup_message_to_stream(stream.output_stream, message);
     stream.close(null);
     let [success, pid] = GLib.spawn_async(null,
-                                          ['unzip', '-uod', dir.get_path(), '--', tmpzip],
+                                          ['unzip', '-uod', dir.get_path(), '--', file.get_path()],
                                           null,
                                           GLib.SpawnFlags.SEARCH_PATH | GLib.SpawnFlags.DO_NOT_REAP_CHILD,
                                           null);